import { PlatformTypeE, TaskStatusE, VideoStatusE, TaskTypeE } from '@g/enum'
interface UserInfoT {
  ingNumber: number,
  mobilePhone: string,
  name: string,
  playNumber: number,
  sumCommission: number,
  taskNumber: number
}
interface VideoUrlT {
  imgUrl: string,
  sendNumber: number,
  useNumber: number,
  videoUrl: string,
  id: string
}
interface DraftTaskDetailT {
  amapPoiId: string,
  commission: number,
  endTime: number,
  id: string,
  img: string,
  platformType: number,
  startTime: number,
  status: number,
  taskContent: string,
  taskNumber: number,
  title: string,
  videoRequire: string,
  videoTitle: string,
  videoUrls: VideoUrlT[]
}

interface UserTaskT {
  commentCount: number,
  diggCount: number,
  forwardCount: number,
  id: string,
  nickname: string,
  playCount: number,
  receiveTime: number,
  shareCount: number,
  status: number,
  videoUrl: string,
  videoStatus: VideoStatusE,
  ip: string,
  ipInfo: string,
  // 其他平台
  shareUrl: string,
  homeImgUrl: string,
  videoImgUrl: string
}

interface TaskDetailT {
  amapPoiId: string,
  commission: number,
  createdTime: string,
  endTime: number,
  id: string,
  img: string,
  platformType: number,
  receiveNumber: number,
  reviewFailNumber: number,
  reviewSuccessNumber: number,
  sendNumber: number,
  sendingNumber: number,
  startTime: number,
  status: TaskStatusE,
  taskContent: string,
  taskNumber: number,
  title: string,
  userTasks: UserTaskT[],
  videoRequire: string,
  videoTitle: string,
  videoUrls: VideoUrlT[],
  poiAddress: string,
  replenishNumber: number,
  type: TaskTypeE,
  titles: Array<{
    id: string,
    title: string
  }>
}

interface TaskPageT {
  commission: number,
  createdTime: number,
  id: string,
  platformType: PlatformTypeE,
  status: number,
  title: string,
  type: TaskTypeE
}

interface POIT {
  address: string,
  poiId: string,
  poiName: string
}

interface ProjectLogPageT {
  afterAmount: number,
  changeAmount: number,
  content: string,
  id: string,
  time: number,
  type: number,
  biz: string
}

interface RechargeLogPageT {
  afterAmount: number,
  changeAmount: number,
  content: string,
  id: number,
  time: number,
  type: number
}

export {
  UserInfoT,
  VideoUrlT,
  DraftTaskDetailT,
  UserTaskT,
  TaskDetailT,
  TaskPageT,
  POIT,
  ProjectLogPageT,
  RechargeLogPageT
}